﻿namespace Renci.Data.Interop.OpenGIS.Gml_32
{
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.3038")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.opengis.net/gml/3.2")]
    [System.Xml.Serialization.XmlRootAttribute("surfaceMembers", Namespace = "http://www.opengis.net/gml/3.2", IsNullable = false)]
    public class SurfaceArrayPropertyType : IOwnershipAttributeGroup
    {
        /// <summary>
        /// Initializes a new instance of the <see cref="SurfaceArrayPropertyType"/> class.
        /// </summary>
        public SurfaceArrayPropertyType()
        {
            this.Owns = false;
        }

        private System.Collections.ObjectModel.Collection<AbstractSurfaceType> _abstractSurfaces = new System.Collections.ObjectModel.Collection<AbstractSurfaceType>();
        /// <remarks/>
        //[System.Xml.Serialization.XmlElementAttribute("AbstractSurface", Type = typeof(AbstractSurfaceType))]
        [System.Xml.Serialization.XmlElementAttribute("Polygon", Type = typeof(PolygonType), Namespace = "http://www.opengis.net/gml/3.2")]
        [System.Xml.Serialization.XmlElementAttribute("CompositeSurface", Type = typeof(CompositeSurfaceType), Namespace = "http://www.opengis.net/gml/3.2")]
        [System.Xml.Serialization.XmlElementAttribute("Surface", Type = typeof(SurfaceType), Namespace = "http://www.opengis.net/gml/3.2")]
        [System.Xml.Serialization.XmlElementAttribute("OrientableSurface", Type = typeof(OrientableSurfaceType), Namespace = "http://www.opengis.net/gml/3.2")]
        public System.Collections.ObjectModel.Collection<AbstractSurfaceType> Surfaces { get { return this._abstractSurfaces; } }

        #region IOwnershipAttributeGroup Members

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute("owns", Namespace = "http://www.opengis.net/gml/3.2")]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool Owns { get; set; }

        #endregion
    }
}
